#ifndef __Mid_Clock_h__
#define __Mid_Clock_h__

#include "types.h"

typedef enum
{
        CLK_SRC_OFF   = 0x00U,             /* Clock is off */
        CLK_SRC_SOSC  = 0x01U,             /* OSCCLK - System Oscillator Bus Clock */
        CLK_SRC_SIRC  = 0x02U,             /* SCGIRCLK - Slow IRC Clock */
        CLK_SRC_FIRC  = 0x03U,             /* SCGFIRCLK - Fast IRC Clock */
        CLK_SRC_SPLL  = 0x06U              /* SCGPCLK System PLL clock */
        
} peripheral_clock_source_t;


//void PCC_HAL_SetClockMode(PCC_Type* const base, const clock_names_t clockName, const bool isClockEnabled);
//void PCC_HAL_SetClockSourceSel(PCC_Type* const base, const clock_names_t clockName, const peripheral_clock_source_t clockSource);



uint32_t get_core_clock(void);
uint32_t get_bus_clock(void);

extern void mid_clock_init(void);
extern void mid_clock_deInit(void);
extern void mid_clock_powerdown(void);




#endif

